import { reactive as p, ref as u, resolveComponent as d, createElementBlock as _, openBlock as c, createVNode as x, normalizeProps as a, guardReactiveProps as l, computed as g, useAttrs as v, createBlock as T, createSlots as S, renderList as P, withCtx as b, renderSlot as y } from "vue";
const O = { class: "card flex flex-col justify-center" }, W = {
  __name: "HelloPlugin",
  props: {
    msg1: String
  },
  setup(t) {
    const e = p({
      columns: [
        { type: "seq", width: 70 },
        { field: "name", title: "Name" },
        { field: "sex", title: "Sex" },
        { field: "age", title: "Age" }
      ],
      data: [
        { id: 10001, name: "Test1", role: "Develop", sex: "Man", age: 28, address: "test abc" },
        { id: 10002, name: "Test2", role: "Test", sex: "Women", age: 22, address: "Guangzhou" },
        { id: 10003, name: "Test3", role: "PM", sex: "Man", age: 32, address: "Shanghai" },
        { id: 10004, name: "Test4", role: "Designer", sex: "Women", age: 24, address: "Shanghai" }
      ]
    });
    return u(0), (n, o) => {
      const s = d("vxe-grid");
      return c(), _("div", O, [
        x(s, a(l(e)), null, 16)
      ]);
    };
  }
}, H = { class: "card border text-red-200 flex flex-col justify-center" }, M = {
  __name: "HelloWorld",
  props: {
    msg: String
  },
  setup(t) {
    const e = p({
      columns: [
        { type: "seq", width: 70 },
        { field: "name", title: "Name" },
        { field: "sex", title: "Sex" },
        { field: "age", title: "Age" }
      ],
      data: [
        { id: 10001, name: "Test1", role: "Develop", sex: "Man", age: 28, address: "test abc" },
        { id: 10002, name: "Test2", role: "Test", sex: "Women", age: 22, address: "Guangzhou" },
        { id: 10003, name: "Test3", role: "PM", sex: "Man", age: 32, address: "Shanghai" },
        { id: 10004, name: "Test4", role: "Designer", sex: "Women", age: 24, address: "Shanghai" }
      ]
    });
    return u(0), (n, o) => {
      const s = d("vxe-grid");
      return c(), _("div", H, [
        x(s, a(l(e)), null, 16)
      ]);
    };
  }
}, A = (t, e) => {
  const n = t.__vccOpts || t;
  for (const [o, s] of e)
    n[o] = s;
  return n;
}, $ = {
  __name: "index",
  props: {
    // vxetable 原有属性（如 columns、data、等）
    columns: Array,
    data: Array,
    // ...可继续补充常用属性
    // 扩展属性
    proOptions: {
      type: Object,
      default: () => ({})
    }
  },
  setup(t) {
    const e = t, n = g(() => {
      var r;
      return e.proOptions.align ? (r = e.columns) == null ? void 0 : r.map((i) => ({
        ...i,
        align: i.align || e.proOptions.align
      })) : e.columns;
    }), o = v(), s = g(() => ({
      border: !0,
      // 默认设置边框，外置优先可以覆盖内置属性
      ...e,
      ...o,
      columns: n.value
    }));
    return (r, i) => {
      const f = d("vxe-grid");
      return c(), T(f, a(l(s.value)), S({ _: 2 }, [
        P(r.$slots, (D, m) => ({
          name: m,
          fn: b((h) => [
            y(r.$slots, m, a(l(h)), void 0, !0)
          ])
        }))
      ]), 1040);
    };
  }
}, k = /* @__PURE__ */ A($, [["__scopeId", "data-v-34a3b5ff"]]), w = {
  install(t) {
    t.component("HelloPlugin", W), t.component("HelloWorld", M), t.component("VxeTablePro", k);
  }
};
export {
  W as HelloPlugin,
  M as HelloWorld,
  k as VxeTablePro,
  w as default
};
